Method and system for facilitating instant messaging transactions between disparate service providers

ABSTRACT

A method and system is described for facilitating instant messaging (IM) between a first user with an address that includes a first domain name and a second user with an address that includes a second domain name different from the first. A substitute address is chosen that includes the second domain name and is mapped to the first address. An IM sent from the first user to the second is copied and re-addressed to be sent from the substitute address. This maintains consistency of domain names between the addressor and addressee, allowing existing IM systems that inhibit IM between incompatible IMSPs to deliver the message.

TECHNICAL FIELD

[0001] These teachings relate generally to instant messaging on anelectronic network, such as the internet or an intranet (e.g., a privatenetwork), between two or more user addresses in different domains. It isparticularly related to instant messaging among two or more useraddresses wherein at least two user addresses include domain names thatdiffer from one another, such as from different instant messagingservice providers.

BACKGROUND

[0002] Instant messaging (IM) is a method and system of live or nearlylive communication, over the internet or other electronic network,between two users who are both simultaneously logged on to an IM serviceprovider (IMSP). The IMSP provides access to the network as well assoftware to facilitate IM between its users. It should be noted thatthere are generally two types of software: “Client-software” that isdownloaded by the end-user (generally this is distributed freely) and“Server-Software” that is not downloaded by the end-user. TheServer-Software is the core and the engine of the IMSP. It is theServer-Software behavior that distinguishes IMSPs from one another byoffering different compelling features. Typically, users download IMClient-Software that enables them to engage in IM with other users ofthe same IMSP who have also downloaded the same or compatible software.There are a variety of IMSPs, for example: Wireless Village (WV), AOL,Yahoo!, MSN and ICQ (AOL is a registered trademark of America Online,Inc.; Yahoo! is a registered trademark of Yahoo! Inc.; MSN is aregistered trademark of the Microsoft Corporation; and ICQ is aregistered trademark of ICQ, Inc.). IM software from one IMSP generallydoes not enable IM communications with users of another IMSP, since mostIMSPs use a proprietary solution.

[0003] Typical IM software today includes a first user (for example,user1) downloading the IM Client-Software onto his own computer. The IMsoftware downloaded onto a user's computer is generally referred to asthe Client-Software (or more simply as the client), a convention that iscontinued herein. The client connects to an IMSP server when user1 logson. The client is pre-configured to know the IP address of the server,so when a user logs in (by entering the username and password) using thepre-downloaded proprietary client, it (the client) requests to connectand authenticate the user to the server. Once the user is authenticated,the server updates the client with a list of buddies and their presenceinformation. The server sends a message back to the user1 client as towhich buddies from the user1 generated buddy list are logged on, alongwith their presence information (such as mood, availability, etc.). Theclient changes the displayed status on user1's computer to indicatewhich buddies are logged on. The user1 access, information is also sentby the server to the clients of those logged-on buddies. When user1wishes to send an IM message to a buddy who is logged on, say user2,user1 clicks or selects the name (IM address) for user2, types orattaches a message in the computer window provided, and sends themessage. Because the user1 client has already been provided the presenceinformation for the user2 client, the message from user1 is sentdirectly to user2.

[0004] It can be noted at this point that in IM the sending of themessage is not guaranteed, so that if an IM is sent from a source to adestination there is no guarantee that it will reach the destination(although this is rare). Note as well that it may be possible to send amessage to an end-user that has not logged into the IMSP server,although the behavior of this feature is server dependent (e.g., Yahoowill save a user's messages until the next time the user logs in, whilesome other IMSPs may not). Also, note that the message from user1 is notsent directly to user2, it is routed instead through the IMSP Serversoftware.

[0005] That is, current IM architecture passes all IM messages through aserver, which routes the message. A reply from user2 is transmitted touser1 in like manner. An IM session remains open until one of the userslogs off, such as by logging off of his client. That client then signalsthe IMSP server of the offline status, and the server then notifies theclients of all of the online buddies of that revised status. Note thatlogging off of a client may be distinguished from closing a client,which may be instead only a change in presence information (e.g., activeto idle).

[0006] One major limitation has been that users of one IMSP identifiedby one domain name could not effect IM with users of another IMSPidentified by a different domain name. This is because each IMSP has itsown proprietary standards on how they pack and unpack messages,standards that are not necessarily enabling of the proprietary standardsof others. Some users have overcome this limitation by maintainingaccounts in each IMSP in which one of their potential buddies has anaccount. However, this leads to users having to maintain multipleaccounts with multiple login identifiers and passwords, having tomaintain open clients for each IMSP a user chooses to monitor during anygiven session on his computer, and the inability to have an IM‘conversation’ with two buddies who each use a different IMSP. Forexample, user1@yahoo.com could engage in IM with user2@yahoo.com, butnot with user2@msn.com.

[0007] Certain IMSPs advertise an ability to facilitate IMcommunications between users of only specified domains that differ. Forexample, Odigo (Odigo is a registered trademark of Odigo, Inc.) assertson its website (www.Odigo.org) that IM users can access two distinctIMSP's: AIM and ICQ. The specific protocol for facilitating this appearsto be proprietary. However, since IM is only enabled between specifieddomains, it is assumed the service is facilitated by servers associatedwith each domain acting in concert under a contractual relation betweenthe IMSPs.

[0008] For convention with regard to this disclosure, an IM address“username@domainname” is parsed as follows. The characters to the leftof the ‘@’ symbol are referred to as the username. The characters to theright of the ‘@’ symbol constitute the domain name or domain, which inthis convention includes the top-level domain name for simplicity. IMaddresses and parts thereof will be offset herein by underlining forclarity.

SUMMARY OF THE INVENTION

[0009] The foregoing and other problems are overcome, and otheradvantages are realized, in accordance with the presently preferredembodiments of these teachings.

[0010] A method of facilitating instant messaging (IM) between twodomains over an electronic communication network is shown. The firstaddress includes a first domain and the second address includes a seconddomain that differs from the first. The steps of the method includefirst receiving a first message from the first address that is directedto the second address. The next step is mapping the first address to asubstitute address, wherein the substitute address includes the seconddomain. Next, the first message is sent from the substitute address tothe second address.

[0011] Various further and additional steps are disclosed to facilitateIM communications from the second address back to the first address,each of which is discussed in detail below.

[0012] The present invention also comprises a system for facilitatinginstant messaging over an electronic network between a first addressthat includes a first domain and a second address that includes a seconddomain that differs from the first domain. The first domain isassociated with a first instant messaging service provider, and thesecond domain is associated with a second instant messaging serviceprovider. The system comprises a substitute address and a map thatcorrelates the substitute address to either the first address or thesecond address. Preferably, the substitute address includes the seconddomain, and the map correlates the substitute address to the firstaddress.

[0013] This invention provides a method and a system for facilitatinginstant messaging (IM) between a first user with an address thatincludes a first domain name and a second user with an address thatincludes a second domain name different from the first. A substituteaddress is chosen that includes the second domain name, and thesubstitute address is mapped to the first address. An IM sent from thefirst user to the second is copied and re-addressed to be sent from thesubstitute address. This maintains consistency of domain names betweenthe addressor and addressee, allowing existing IM systems that inhibitIM between incompatible IMSPs to deliver the message.

BRIEF DESCRIPTION OF THE DRAWINGS:

[0014] The foregoing and other aspects of these teachings are made moreevident in the following Detailed Description of the PreferredEmbodiments, when read in conjunction with the attached Drawing Figures,wherein:

[0015]FIG. 1 is a conceptual overview of IM Systems of the prior art,wherein each IMSP (Wireless Village, AOL, etc.) is isolated from theother IMSPs.

[0016]FIG. 2 is a conceptual overview of an IM System according to thepresent invention, wherein an IMSP that does not preclude IM betweenusers in different domains can facilitate IM through other IMSPs.

[0017]FIG. 3 is a block diagram of a first user on a first IMSP engagingin IM with a second user on a second IMSP.

[0018]FIG. 4 is a flow chart outlining the steps for two-way instantmessaging in accordance with an embodiment of the invention.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0019] The present invention is best understood with reference to theassociated drawings, wherein FIG. 1 is a simplified block diagramexposing a limitation of instant messaging (IM) systems of the priorart. FIG. 1 depicts four widely used instant messaging service providers(IMSPs): Wireless Village (WV), America Online (AOL), Microsoft Network(MSN) and ICQ. Each of these IMSPs facilitates IM between their owncustomers or users, but do not enable those same users to engage in IMwith users of other IMSPs. In effect, each IMSP provides IM only amongits own island of users.

[0020]FIG. 2 depicts a simplified block diagram wherein the limitationof FIG. 1 is overcome for users of Wireless Village. Employing thepreferred embodiment of the present invention, WV enables its users toengage in IM with users of any other IMSP, of which only three aredepicted. FIG. 2 is illustrative, as the present invention is notnecessarily limited to direct contact between the servers of disparateIMSPs for every phase of IM communication. Throughout this disclosureand the ensuing claims, both servers and clients associated with aparticular IMSP are considered to comprise that particular IMSP. Forexample, WV includes the WV servers as well as every WV client residentin the computers of WV users.

[0021]FIG. 3 illustrates in block diagram how IM communications betweentwo users of disparate IMSPs is facilitated. A sender 12 (depicted as amobile terminal) enters a message directed to a recipient 14 (depictedas another mobile terminal). The sender and/or recipient mayalternatively use a computer terminal or any other device on which anIMSP client is resident. By way of example, the sender will bedesignated as Mitri using the IM address mitri@wv.com and the recipientwill be designated as Srini using the IM address srini@icq.com. By theirIM domains, Mitri's IMSP 16 is Wireless Village and Srini's IMSP 18 isICQ. In accordance with an aspect of this invention, Mitri's IMSP 16creates a pool of IM addresses. Note that in this case that the IMSP isWV, which does not maintain the account, as the accounts are maintainedby ICQ. That is, the accounts are maintained by ICQ, and stored at theICQ server, and the WV server behaves (in this case) like any ICQ user.

[0022] The pool of IM addresses need not be fixed, and may change overtime. Preferably, creation of the pool is done prior to the time thatMitri directs a message to Srini, so that an IMSP practicing the presentinvention maintains pools of IM addresses within several domains, eachdomain consistent with one of numerous other IMSPs. Alternatively,Mitri's IMSP may create an address consistent with the IM system ofSrini's IMSP when Mitri attempts to initiate IM with a user of a foreignIMSP such as Srini.

[0023] When Mitri's IMSP detects a message that is directed to a foreignIMSP, for example, “From mitri@wv.com; To srini@icq.com”, Mitri's IMSPaccesses the pool of addresses within the domain of Srini's IMSP (orcreates a new address within that domain) and reserves one of them forthe pending IM session initiated by Mitri. By example, the address fromthe pool reserved for this IM session will be designatedsubstitute@icq.com. Mitri's IMSP further maps Mitri's address,mitri@wv.com, to the address reserved from the pool and stores thismapping data. Because the recipient IMSP will only transfer IM messageswhen both sender and receiver addresses are from within its own domain,Mitri's IMSP copies the message from Mitri to Srini into an accountbearing a domain that will be processed by Srini's IMSP. Note thatwhether the IM (from Mitri to Srini) is copied to the IM (fromsubstitute to Srini) is an implementation detail. The IM could becopied, or the From address can be changed without explicitly copyingthe message. However, from Mitri>Srini the message needs to be copieddue to the packaging and unpackaging of the entire IM message.

[0024] Specifically, Mitri's IMSP accesses the mapped data and findsmitri@wv.com is mapped to substitute@icq.com. Mitri's IMSP copies thetext of the message into an IM message from the reserved address. Thecopied message is now addressed “From substitute@icq.com; Tosrini@icq.com”. The copied message with an address within therecipient's domain is sent over the internet, world wide web, or otherelectronic network. The recipient's IMSP recognizes this network trafficas IM between two of its own users, and directs the message tosrini@icq.com as Mitri intended.

[0025] It is important to note that sending Mitri's copied message fromthe address substitute@icq.com makes the message indiscernible, from theperspective of the recipient's IMSP, from IM traffic among any of theregular users of the recipient's IMSP. The message is indiscernablebecause the packaging of the message is performed by the sameClient-Software as the recipient IMSP.

[0026] The actual graphical screen interface viewed by Srini may or maynot indicate that Mitri is the sender. Preferably it does indicate thesender to better facilitate communication between the end users, Mitriand Srini in this example. It should be noted, however, that copying ofthe message may allow the server to add/append a string (e.g.,username/buddyname) to indicate where the message is coming from. Theseare features that the originating IMSP can provide. To maintain privacyof the true sender Mitri from all except Srini, the mapping ofsubstitute@icq.com with mitri@wv.com is preferably deleted and thesubstitute address is returned to the pool or deleted (i.e., no longerassociated with mitri@wv.com or srini@icq.com) once the IM sessionbetween Mitri and Srini is completed. Completion is typically signaledby at least one of the end users logging off of their respective client.

[0027] There are pluralities of methods by which return communicationsfrom Srini to Mitri maybe accomplished. In the example below, user1 isthe sender of the original message who initiates IM between the partiesusing IMSP1. IMSP1 is identified with the domain “abc.com”, and does notinhibit transfers between domains. User2 is the intended recipient ofthe original message and uses IMSP2. IMSP2 is identified with the domain“xyz.com”. The domains “abc.com” and “xyz.com” represent disparatedomains similar to wv.com and icq.com in the above example using Mitriand Srini.

[0028]FIG. 4 illustrates in block diagram the architecture that enablesthe present invention. As described above, IMSP1 creates and maintainsat block 22 a pool of addresses within then domain that is recognizableby IMSP2. For example, if IMSP2 facilitates IM between users with domainnames (@xyz.com, then IMSP1 will create a pool of identifiers that alsoend with (@xyz.com. IMSP1 receives an original message that is directed,for example, “From user1@abc.com; To user2@xyz.com” at block 24.Recognizing that xyz.com is a foreign domain, IMSP1 selects and reservesin block 26 an address from a pool of addresses in the xyz.com domainthat was created at block 22. IMSP1 then maps and stores the reservedaddress with the addresses of the initial message at block 28 asfollows: user1@abc.com is mapped to substitute@xyz.com; andsubstitute@xyz.com is mapped to user2@xyz.com. This mapped data may bebidirectional: i.e.: user1@abc.com is mapped to substitute@xyz.com; andsubstitute@xyz.com is mapped to user1@abc.com. Once the mapping data isstored, it is accessed by IMSP1 at block 30. IMSP1 then copies the textof the original message sent in block 24 and sends the copied messagewhich is now addressed as “From substitute@xyz.com; To user2@xyz.com”over the network at block 32. IMSP1 may have to re-format the originalmessage in order to copy its text. Because the copied message is sentfrom a domain identified with IMSP2, it is sent by IMSP1 but throughIMSP2 onto the network. IMSP2 receives this message at block 34 anddirects it to user2@xyz.com as it would any other IM traffic between twoof its users.

[0029] Following receipt of the message, user2 sends an original replythat is addressed “From user2@xyz.com; To substitute@xyz.com”. Thismessage is received by IMSP2 at block 36, and at block 38 IMSP2 directsthis reply to substitute@xyz.com as it would for any other user of itsservices. Continually from the time of the mapping done in block 38,IMSP1 monitors network traffic addressed to or from substitute@xyz.com,and discerns at block 40 that an original reply is directed to thataddress. IMSP1 intercepts that message and accesses the stored mappingdata. IMSP1 uses the mapping data to substitute the address of the replyrecipient at block 42. IMSP1 then copies the text of the original replyinto a message addressed: “From user2@xyz.com; To user1@abc.com, andsends the copied reply to user1@abc.com at block 44. It is to be notedthat this copied reply does not maintain consistent domain names betweenaddressor and addressee. As stated above, an IMSP practicing the presentinvention must not inhibit delivery of an IM message with disparatedomains. It is believed that most popular IMSPs do so inhibit IM betweendisparate domains, primarily for business rather than technical reasons.

[0030] IMSP1 may then receive, at block 46, an additional message “Fromuser1@abc.com To user2@xyz.com”. IMSP1 then accesses the map again as inblock 30 and continues as before to copy message text and substituteaddresses to enable IM between user1 and user2 so long as they are bothlogged on. Once communication between user1 and user2 is terminated, thereserved address substitute@xyz.com is returned to the pool of addressesfor future use, or is deleted (depending on the implementation), notnecessarily related to either user1@abc.com or user2@xyz.com. Thisminimizes the required size of the address pool.

[0031] It is noted that the domain names per se are not what allows theIMSP1 to deliver or to restrict the sending of the messages between twodifferent IM providers; instead it is the proprietary information andthe packaging and unpackaging of the IM message that typically differsbetween each IM provider that does not allow the communication betweentwo different IMSPs. That is, it is not the domain names, but theincompatibilities between IMSPs, that affects the ability to send andreceive IMs.

[0032] While described in the context of presently preferredembodiments, those skilled in the art should appreciate that variousmodifications of and alterations to the foregoing embodiments can bemade, and that all such modifications and alterations remain within thescope of this invention. Examples herein are stipulated as illustrativeand not exhaustive.

What is claimed is:
 1. A method of facilitating instant messaging (IM)over an electronic communication network between a first address thatincludes a first domain and a second address that includes a seconddomain that is different from the first, comprising: receiving a firstmessage from the first address that is directed to the second address;and mapping the first address to a substitute address that includes thesecond domain name.
 2. The method of claim 1, where the substituteaddress is selected from a pool of addresses that each include thesecond domain and that are created and maintained by a first instantmessaging service provider (IMSP1).
 3. The method of claim 2, where themapping between the first address and the substitute address is deletedafter IM between the first address and the second address is terminated.4. The method of claim 2, where the substitute address is one ofreturned to the pool or deleted after IM between the first address andthe second address is terminated.
 5. The method of claim 1, executed bya first instant messaging service provider (IMSP1) that is identifiedwith the first domain.
 6. The method of claim 1, further comprisingcopying a text of the first message; and sending the copied text of thefirst message from the substitute address to the second address.
 7. Themethod of claim 1, further comprising copying a text of the firstmessage; and reformatting the copied text of the first message.
 8. Themethod of claim 1, further comprising copying a text of the firstmessage; and appending the copied text to another message.
 9. The methodof claim 6, further comprising: monitoring the substitute address for areply message; mapping the substitute address to the first address;copying a text of the reply message; and sending the copied text of thereply message to the first address.
 10. The method of claim 9, furthercomprising one of deleting the substitute address or returning thesubstitute address to the pool of addresses.
 11. The method of claim 9,where the reply message is directed from the substitute address to thefirst address by means of the mapping.
 12. A system for facilitatinginstant messaging (IM) over an electronic network between a firstaddress that includes a first domain name that is associated with afirst instant messaging service provider (IMSP1) and a second addressthat includes a second domain name that is associated with a secondinstant messaging service provider (IMSP2) and wherein the first and thesecond domain names differ from one another, comprising: a substituteaddress that includes the second domain name; and a map that correlatesthe substitute address to the first address once IM is initiated fromthe first address.
 13. The system of claim 12, further comprising a poolof substitute addresses from which the substitute address is selected,and wherein the map is deleted upon termination of a catenated series ofinstant messages between the first address and the second address. 14.The system of claim 12, where the substitute address is assigned toIMSP1.
 15. The system of claim 12, wherein the map is stored in IMSP1.16. The system of claim 12, where the map is deleted upon termination ofa plurality of instant messages between the first address and the secondaddress.